/*
 *
 * 写协议的时候经常没板子，所以在windows环境下编写代码，由于高泰保护板的代码变量类型与标准库的不符，
 * 写完移植到工程中还需要改变量，所以出了该文件
 *
 */
#include <stdbool.h>
#include <stdint.h>

#define uint8  uint8_t
#define uint16 uint16_t
#define uint32 uint32_t
#define uint64 uint64_t

#define int8  int8_t
#define int16 int16_t
#define int32 int32_t
#define int64 int64_t

#define BOOLEAN bool

#define TRUE  true
#define FALSE false

#define BATALARM                 uint16  // 电池故障类型
#define QTYPE_01AH               uint32  // Q值0.1Ah
#define QTYPE_001AH              uint32  // Q值0.001Ah
#define QTYPE_0001AH             uint32  // Q值0.001Ah
#define QTYPE_00001AH            uint32  // Q值0.0001Ah
#define CURRENTI_MAMS            int32   // 电流积分，最多累积量2000AS
#define CURRENT_001MA            int32   // 电流 0.01mA，充电为负
#define CURRENT_MA               int32   // 电流 mA，充电为负
#define CURRENT_01A              int16   // 电流,0.1A
#define CURRENT_A                int16   // 电流，A,恒为正值
#define CHARGECUR_01A            uint16  // 充电电流，0.1A，恒为正值
#define CELLVOLT_MV              uint16  // 单体电压,0.001V
#define SOCSOH                   uint16  // SOC,SOH,0.1%
#define TERMINALVOLT_01V         uint16  // 端电压 0.1v
#define TERMINALVOLT_MV          uint32  // 端电压,
#define TEMPERATURE_1C           int8    // 温度，1℃
#define TEMPERATURE_01C          int16   // 温度，0.1℃
#define MILLISECOND              uint32  // 毫秒，相对单位
#define MICROSECOND              uint16  // 微秒，相对单位
#define SECOND                   uint32  // 秒，系统时间单位
#define SECOND16                 uint16
#define SECOND8                  uint8
#define BATGALARM                uint16  // 电池故障类型
#define BMSALARM                 uint16  // 电池报警
#define VEHICLEALARM             uint32  // 整车报警
#define MVVOLT                   uint16  // 毫伏电压
#define SVOLT_01MV               int32   // 有符号mv电压
#define VOLT_01MV                uint32  // 无符号0.1mv电压
#define QTYPE_01AH               uint32  // Q值0.1Ah
#define LEAKUNIT                 uint32  // 绝缘阻值单位
#define RES_01OHM                uint32  // 电阻阻值    0.1Ω
#define SPEED_01KMH              int16   // 车速     0.1km/h
#define PERCENT_PER              uint8   // 百分比 1%
#define PERCENT_01PER            uint16  // 百分比 0.1%
#define PERCENT_001PER           uint16  // 百分比 0.01%
#define MOTOR_RPM                int16   // 转速
#define TORQUE_NM                int16   // 扭矩
#define TORQUE_01NM              int16   // 扭矩 0.1Nm
#define POW_01KW                 uint16  // 功率0.1kw
#define POW_001KW                uint32  // 功率0.01kw
#define ODO_001KM                uint32  // 里程0.01km
#define ODO_1M                   uint32  // 里程0.01km
#define FREQ_01HZ                uint32  // 频率0.1Hz
#define CELLCAP_MF               uint32  // 单体容值
#define SYSTEM_POINT_TYPE        uint32
#define MCUADCODE                uint16  // ad code type
#define QTIOFILTERLEN_TYPE       uint16
#define QTIOINSAMPLINTV_TYPE     uint8
#define QT_SOFTTIMERMAX_TYPE     uint8   // 软件timer数量的类型
#define MCUADCODE                uint16  // ad code type
#define MCUADCODE_SUM            uint32  // ad code type 累加缓存类型
#define MCUADCODE_CALCULATE_TYPE uint32  // ad code type 计算中间值类型
#define EPARA_UNIT               uint8
#define EPARA_ADDRTYPE           uint16
#define SPIPARA_ADDRTYPE         uint32